bitkeeper revision 1.1194.1.1 (420fb929A6i2BgwaqAFiDYqZMrpIQg)
Re-organise guest_table, shadow_table and monitor_table so that
they always have the meaning their names suggest i.e. in the
hypervisor CR3 always contains monitor_table.
After updating guest_table or any of the shadow state remeber
to call update_pagetables(ed)
One side-effect of this change is that VMX guests now start off with
shadow_mode set to full_32, but actually running on the 1:1 physmap.
We don't actually call update_pagetables() until the VCPU enables
paging, hence ensuring that linear_pg_table is NULL so we bail out
early in shadow_fault if a vmx guest tries to access outside its
memory map. We'll need this for SMP VMX guests so that each VCPU can
enable paging independently. We might need to think further about
this for guests that do IO without paging on - possibly having a
generated pseudo phys pt that the full shadow mode can translate and
shadow.
Signed-off-by: ian@xensource.com